package com.sleep.drug_traceability.service;

import com.sleep.drug_traceability.vo.Result;
import com.sleep.drug_traceability.vo.params.ManParam;
import com.sleep.drug_traceability.vo.params.SelParam;
import com.sleep.drug_traceability.vo.params.SupParam;

import java.util.List;

/**
 * @author Sleep-6000
 * @date 2022/4/25
 */
public interface PerfectService {
    /**
     * 完善药品生产商信息
     * @param manParam manParam
     * @param token token
     * @return Result
     */
    Result perfectManInfo(ManParam manParam, String token);

    /**
     * 完善销售商信息
     * @param selParam selParam
     * @param token token
     * @return Result
     */
    Result perfectSelInfo(SelParam selParam, String token);

    /**
     * 完善监管部门信息
     * @param supParam supParam
     * @param token token
     * @return Result
     */
    Result perfectSupInfo(SupParam supParam, String token);

    /**
     * 修改账号负责人
     * @param id id
     * @param newLegal newLegal
     */
    void changeLegal(Long id, String newLegal);

    /**
     * 修改联系方式
     * @param id id
     * @param newContact newContact
     */
    void changeContact(Long id, String newContact);

    /**
     * 获取所有销售商名称
     * @return 所有销售商名称
     */
    List<String> getAllSellerName();

    /**
     * 获取药品生产商名称
     * @param id id
     * @return 药品生产商名称
     */
    String getManName(Long id);

    /**
     * 获取销售商名称
     * @param id id
     * @return 销售商名称
     */
    String getSelName(Long id);

    /**
     * 获取监管部门名称
     * @param id id
     * @return 监管部门名称
     */
    String getSupName(Long id);
}
